#ifndef __CK_OBJECT_H__
#define __CK_OBJECT_H__

namespace ck
{
	class ckObject
	{
	public:
		ckObject() { m_ref = 1; }
		virtual ~ckObject() {}
	public:
		virtual int AddRef() { return (++m_ref); }
		virtual void Release() { if ((--m_ref) == 0) { delete this; } }
	protected:
		int	m_ref;
	};
}


#endif //__CK_OBJECT_H__

